package com.one.controller;

import java.util.List;
import java.util.Map;

import javax.annotation.Resource;
import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import com.one.entity.Adder;
import com.one.entity.Classe;
import com.one.entity.Grade;
import com.one.entity.Major;
import com.one.entity.StuUser;
import com.one.entity.Student;
import com.one.service.AllService;
import com.one.service.StuUserService;

/**
 * @类描述：登录控制器
 * @作者：李松
 * @创建时间：2019年4月27日
 * @项目名称：one_upbringcom.one.controller
 */
@Controller
@RequestMapping("StuUserController")
public class StuUserController {
	@Resource
	private StuUserService stuUserService;
	@Resource
	private AllService as;
	@RequestMapping("check")
	public String check(String stuUser,String stuPassword,HttpSession session){
		 session.setAttribute("stuUser", stuUser);  //将对应数据存入session中
		Map<String, Object> finStu = stuUserService.finStu(stuUser, stuPassword);
		if(null!=finStu&&0<finStu.size()){
			//登录成功
			return "redirect:findOneStuUser.do";
		}
		//失败
		return "redirect:../StuUser.jsp";
	}
	/**
	 * 注销登录
	 */
	@RequestMapping("logout")
	public String logout(HttpSession session){
		//将session杀死、使session失效
		session.invalidate();
		return "../../StuUser";//注销后去登录页面
	}
	/**
	 * 注册
	 */
	@RequestMapping("addStu")
	public String addStu(StuUser stuUser,HttpSession session){
		String sU=stuUser.getStuUser();
		session.setAttribute("stuUser", sU);
		//System.out.println(session.getAttribute("User"));
		stuUserService.addStu(stuUser);
		return "redirect:findOneStuUser.do";
	}
	//去注册页面
	@RequestMapping("toAdd")
	public String toAdd(){
		return "StuUsers";
		
	}
	//学员中心查询一个
	@RequestMapping("findOneStuUser")
	public String findOneStuUser(String stuUserName,HttpSession session,Model model){
		stuUserName=(String) session.getAttribute("stuUser");
		List<StuUser> findOneStuUser=stuUserService.findOneStuUser(stuUserName);
		model.addAttribute("findOneStuUser", findOneStuUser);
		//List<StuUser> findOneStuUser = stuUserService.findOneStuUser(stuUserName);
		/*model.addAttribute("findOneStuUser", findOneStuUser);
		System.out.println("学员信息学是"+findOneStuUser);*/
		return "stuCore";
	}
	//去修改页面
		@RequestMapping("toupStuUser")
		public String toupStuUser(HttpSession session,Model model){
			String name = (String) session.getAttribute("stuUser");
			List<StuUser> findOneStuUser=stuUserService.findOneStuUser(name);
			model.addAttribute("findOneStuUser", findOneStuUser);
			return "upStuUser";
			
		}
	// 学员中心修改资料
	@RequestMapping("upStuUser")
	public String upStuUser(StuUser stuUser,HttpSession session,Model model) {
		String name = (String) session.getAttribute("stuUser");
		stuUser.setStuUser(name);
		List<StuUser> findOneStuUser=stuUserService.findOneStuUser(name);
		model.addAttribute("findOneStuUser", findOneStuUser);
		stuUserService.upStuUser(stuUser);
		return "stuCore";
	}
	// 查询所有学生
	@RequestMapping("allStudent")
	public String allStudent(Integer userId,HttpSession session, Model model) {
		//userId=(Integer) session.getAttribute("userId");
		List<Student> allStudent=stuUserService.allStudent(userId);
		model.addAttribute("allStudent", allStudent);
		// 专业
		List<Major> allMajor = as.allMajor();
		model.addAttribute("allMajor", allMajor);
		// 执教方式
		List<com.one.entity.Model> allModel = as.allModel();
		model.addAttribute("allModel", allModel);
		// 执教地区
		List<Adder> allAdder = as.allAdder();
		model.addAttribute("allAdder", allAdder);
		//年级
		List<Grade> allGrade = as.allGrade();
		model.addAttribute("allGrade", allGrade);
		//科目
		List<Classe> allClasse=as.allClasse();
		model.addAttribute("allClasse", allClasse);
		return "askTea";
	}
	//添加学生      生成订单部分内容
	@RequestMapping("addStudent")
	public String addStudent(Student student){
		//stuUserService.addStudent(student);
		System.out.println(student);
		return "stuCore";
	}
}
